package com.cleaningcloud.cld.domain;

import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import com.cleaningcloud.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.cleaningcloud.common.core.annotation.Excel;

/**
 * 奖惩管理对象 cld_rewards
 * 
 * @author cleaningcloud
 * @date 2024-11-08
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class CldRewards extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 奖惩ID */
    private Long rewardsId;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 员工ID */
    @Excel(name = "员工ID")
    private Long staffId;

    /** 奖惩类型(1奖励2惩罚) */
    @Excel(name = "奖惩类型(1奖励2惩罚)")
    private Long rewardsType;

    /** 奖惩说明 */
    @Excel(name = "奖惩说明")
    private String rewardsRemark;

    /** 奖惩金额 */
    @Excel(name = "奖惩金额")
    private BigDecimal rewardsMoney;

    /** 审批状态(1待审批2被驳回3已通过) */
    @Excel(name = "审批状态(1待审批2被驳回3已通过)")
    private Long approveStatus;

    /** 审批人ID */
    @Excel(name = "审批人ID")
    private Long approveId;

    /** 审批人名称 */
    @Excel(name = "审批人名称")
    private String approveName;

    /** 审批时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审批时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date approveTime;

    /** 驳回时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "驳回时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date rejectTime;

    /** 驳回原因 */
    @Excel(name = "驳回原因")
    private String rejectReason;

    /** 创建人ID */
    @Excel(name = "创建人ID")
    private Long createId;

    /** 创建人名称 */
    @Excel(name = "创建人名称")
    private String createName;

    /** 备注是否关闭 */
    @Excel(name = "备注是否关闭")
    private Long flag;
    // 岗位
    private Long projectPostName;
}
